// import React from 'react';
// import './style.css';
// import mzsdk from '../../utils/mzsdk';
// import '../../utils/mzsdk.css';
//
// import FCodeAlert from './components/FCodeAlert';
// import WhiteAlert from './components/WhiteAlert';
// import GetKickoutAlert from './components/GetKickoutAlert';
//
// import SuperPlayer from './playerUI/super';
// import VerticalPlayer from './playerUI/vertical';
//
// import { Toast, ActivityIndicator } from 'antd-mobile';
//
// import FullScreenAd from './components/FullScreenAd';
//
// import MZActionSheet, { showActionSheet, closeActionSheet } from '../../components/MZActionSheet';
// import UserInfo from '../main/components/UserInfo'
// import Barrage from '../main/components/Barrage'
//
// import { initDefinitionManager } from './components/DefinitionManager';
// import { addRTCOnlyLiveControl } from './components/RTCLiveControl'
//
// let id = "2024051109525093939";
// let key = "fk6QTUpNAUEcRfHf8Jjy6sjOLWc6bVfpumNzIshdxfB1ppxbErE4qt0KITpX7zx4";
// let isShowLog = false;
//
// // 用户信息
// let uniqueId = 'mengzhu_xiaomengxin99999';
// let name = "盟主小萌新";
// let avatar = "http://s1.dev.zmengzhu.com/upload/img/5b/c6/5bc6401a483360737cc6ca24f5bdc960.jpeg";
// let phone = "19912344329";
//
// // 活动ID
// let ticketId = "";
//
// let isPageHide = false;
//
// export default class Main extends React.Component {
//
//     constructor(props) {
//         super(props);
//         ticketId = props.match.params.ticketId;
//
//         this.state = {
//             limit: 50,//历史消息一次请求的个数
//             isNoMore: false,//没有更多数据了
//             origin_chatList: [],//完整的聊天数据
//             onlyHost_chatList: [],//只看主播聊天数据
//             isOnlyHostMsg: false,//只看主播开关
//
//             chatList: [],//当前展示的聊天数据
//             isHideHistoryChat: false,//是否展示历史聊天记录
//
//             ticketInfo: null,//initSDK返回的活动详情数据
//
//             isShowErrorDisplay: false,//播放展示错误的展示
//             errorContent: '',//错误内容
//
//             isBannedAll: false,//是否禁止所有人聊天
//             isBannedMeTalk: false,//是否禁言自己
//
//             isShowFCodeAlert: false,//输入F码弹窗
//             isShowWhiteAlert: false,//白名单无权限观看弹窗
//             isShowGetKickoutAlert: false,//被踢出房间弹窗
//
//             isShowDisableRecordScreen: false,//是否显示防录屏
//             isShowFullScreenAd: false,//是否显示暖场图
//
//             hostInfo: null,//主播信息
//
//             live_style: -1,// -1=加载中，0=横屏播放器，1=竖屏播放器
//
//             superPlayerRef: null,//二分屏播放器Ref
//             verticalplayerRef: null,//竖屏播放器Ref
//         };
//     }
//
//     componentWillUnmount() {
//         mzsdk.mzee.off('interactionControl_sendMessage')
//         mzsdk.mzee.off('onClick_userInfo')
//         mzsdk.mzee.off('toRequestHistoryOldMsg')
//         if (mzsdk) {//销毁mzsdk
//             mzsdk.disconnect();
//         }
//     }
//     componentDidMount() {
//         window.addEventListener('pageshow', function () {
//             if (isPageHide) {
//                 window.location.reload();
//             }
//         });
//         window.addEventListener('pagehide', function () {
//             isPageHide = true;
//         });
//
//         var _this = this;
//         var ticket = localStorage.getItem('ticketId');
//         if (ticket) {
//             localStorage.removeItem('ticketId');
//             ticketId = ticket;
//             // 去检查活动观看权限
//             this.checkTicketPlayPermission();
//             return;
//         }
//         if (ticketId.length <= 0) {
//             Toast.info('活动ID不能为空', 1.5);
//             setTimeout(() => {
//                 _this.props.history.push('/home');
//             }, 0);
//             return;
//         }
//         this.checkTicketPlayPermission();
//     }
//
//     //如若需要 白名单观看权限｜F码观看权限的， 需要执行此方法来检测，
//     //如任何人都可观看，也可省略此步骤，直接执行 initMzSDK() 方法。
//     checkTicketPlayPermission = () => {
//         var _this = this;
//
//         // 检测活动的观看权限
//         mzsdk.checkPlayPermission({
//             ticketId: ticketId,
//             uniqueId: uniqueId,
//             name: name,
//             avatar: avatar,
//             phone: phone,
//             permision: {
//                 id: id,
//                 key: key
//             },
//             isShowLog: isShowLog
//         }).then((res) => {
//             console.log("res:", res);
//
//             // "view_mode": 6, // 视频观看模式 1:免费 2:vip 3:付费 4:密码  5:白名单观看 6:F码观看
//             // "allow_play": 1 // 是否有权限观看 0:否 1:是
//             if (res.allow_play == 1) {
//                 _this.initMzSDK();
//                 return;
//             }
//
//             if (res.view_mode == 5) {
//                 this.setState({
//                     isShowWhiteAlert: true
//                 })
//             } else if (res.view_mode == 6) {
//                 this.setState({
//                     isShowFCodeAlert: true
//                 })
//             } else {
//                 _this.initMzSDK();
//             }
//         }, (error) => {
//             console.log("error:", error);
//             Toast.info(error.msg, 1.5);
//             this.props.history.push('/main');
//         })
//     }
//
//     initMzSDK = () => {
//         var _this = this;
//         mzsdk.init({
//             ticketId: ticketId,
//             uniqueId: uniqueId,
//             name: name,
//             avatar: avatar,
//             phone: phone,
//             permision: {
//                 id: id,
//                 key: key
//             },
//             isShowLog: isShowLog
//
//         }).then((res) => {
//             console.log("返回的播放信息：", res);
//
//             /* 播放信息
//             channel_id; // 频道ID
//             chat_uid; // 自己在聊天室里的id
//             cover; // 活动封面
//             status; // 直播状态 0:未开播 1:直播 2:回放 3:断流
//             live_type; // 直播类型 0:视频 1:语音
//             popular; // 活动pv
//             msg_config; // 消息监听配置
//             chat_config; // 聊天监听配置
//             like_num; // 用户点赞数量
//             live_style; // 直播样式 0:横屏 1:竖屏
//             unique_id;//第三方传递过来的唯一id
//             view_mode;// 观看权限 1:免费 2:vip 3:付费 4:密码  5:白名单观看 6:F码观看
//             ticket_id;//活动ID
//             user_status;// 用户状态 1:正常 2:被踢出 3:禁言
//             notice: {Object} // 公告内容
//             video: {Object} // 视频播放地址
//             uv; // uv
//             webinar_onlines; // 进入频道的时候的总在线人数
//             right: [] // 活动配置
//             live_at: "1632985091" 预开播时间，无配置预开播时间，返回0
//             */
//
//             let isShowFSAd = false;
//             // 初始化的活动配置
//             for (let i = 0; i < res.right.length; i++) {
//                 let element = res.right[i];
//                 switch (element.type) {
//                     case 'documents'://文档开关
//                         console.log('初始化文档开关', parseInt(element.is_open) == 1 ? '开' : '关')
//                         break;
//                     case 'disable_chat'://全体禁言开关配置
//                         if (parseInt(element.is_open) == 1) {
//                             _this.state.isBannedAll = true
//                         }
//                         break;
//                     case 'record_screen'://防录屏开关
//                         if (parseInt(element.is_open) == 1) {
//                             _this.state.isShowDisableRecordScreen = true
//                         }
//                         break;
//                     case 'full_screen'://启动广告开关（暖场图）
//                         if (parseInt(element.is_open) == 1) {
//                             isShowFSAd = true
//                         }
//                         break;
//                     case 'hide_chat_history'://是否隐藏历史聊天记录
//                         if (parseInt(element.is_open) == 1) {
//                             _this.state.isHideHistoryChat = true
//                         }
//                         break;
//                     case 'barrage'://弹幕开关
//                         mzsdk.mzee.emit('barrage_can_send', parseInt(element.is_open) == 1 ? true : false)
//                         break;
//                     default:
//                         break;
//                 }
//             }
//
//             if (res.user_status && parseInt(res.user_status) == 2) {//被踢出
//                 this.setState({
//                     isShowGetKickoutAlert: true
//                 })
//                 return;
//             }
//
//             if (res.user_status && parseInt(res.user_status) == 3) {//被禁言
//                 this.setState({
//                     isBannedMeTalk: true
//                 })
//                 Toast.info('您已被禁言', 1.5)
//             }
//             if (isShowFSAd) {
//                 _this.setState({
//                     isShowFullScreenAd: true
//                 }, () => {
//                     setTimeout(() => {
//                         _this.setState({
//                             ticketInfo: res,
//                             live_style: res.live_style
//                         }, () => {
//                             _this.initPlayer();
//                         })
//                     }, 1000);
//                 })
//             } else {
//                 _this.setState({
//                     ticketInfo: res,
//                     live_style: res.live_style
//                 }, () => {
//                     _this.initPlayer();
//                 })
//             }
//
//         }, (error) => {
//             console.log("error:", error);
//             Toast.info(error.msg, 1.5)
//             this.props.history.push('/main');
//         });
//     }
//
//     // 初始化播放器的需求
//     initPlayer = () => {
//         var _this = this;
//
//         let { ticketInfo } = this.state;
//         let res = ticketInfo;
//
//         //创建链接
//         mzsdk.connect();
//
//         //初始化聊天
//         // mzsdk.chat.push("我先发一条消息");
//         mzsdk.chat.init({
//             receiveMsg: (msg) => {
//                 console.log("收到一条消息:", msg,)
//                 let { origin_chatList, onlyHost_chatList, isOnlyHostMsg } = _this.state;
//
//                 if (_this.isOnlyHostMsgFunc(msg) == true) {
//                     onlyHost_chatList.push(msg)
//                 }
//                 origin_chatList.push(msg)
//                 _this.setState({
//                     chatList: JSON.parse(JSON.stringify(isOnlyHostMsg == true ? onlyHost_chatList : origin_chatList))
//                 }, () => {
//                     mzsdk.mzee.emit('chat_updateList')
//                     if (isOnlyHostMsg == false) {
//                         console.log('发送弹幕')
//                         mzsdk.mzee.emit('barrage_send_msg', msg)
//                         return
//                     }
//                     if (_this.isOnlyHostMsgFunc(msg) == true) {
//                         mzsdk.mzee.emit('barrage_send_msg', msg)
//                     }
//                 })
//             }
//         });
//         // 监听interactionControl的 发送消息的事件
//         mzsdk.mzee.on('interactionControl_sendMessage', function (message) {
//             console.log('需要发送的消息：', message)
//
//             if (_this.state.isBannedAll) {
//                 Toast.info('主播开启了全体禁言', 1.5)
//                 return;
//             }
//             if (_this.state.isBannedMeTalk) {
//                 Toast.info('您已被禁言', 1.5)
//                 return;
//             }
//
//             mzsdk.chat.push(message).then(function (data) {
//                 if (data == 200) {
//                     console.log('消息发送成功')
//                 } else {
//                     console.log('失败：',data)
//                     if (data.code == 401) {
//                         Toast.info((`涉及敏感词` + ` "` + data.data.keywords + `"`), 1.5)
//                     }
//                 }
//             });
//         })
//         // 监听点击了用户信息
//         mzsdk.mzee.on('onClick_userInfo', function (userInfo) {
//             showActionSheet(
//                 <MZActionSheet title='用户信息' height={6}>
//                     <UserInfo userInfo={userInfo} ticketInfo={ticketInfo} onClose={() => { closeActionSheet() }} />
//                 </MZActionSheet>
//             )
//         })
//         // 监听更改只看主播按钮
//         mzsdk.mzee.on('only-host-change', function (checked) {
//             _this.setState({
//                 isOnlyHostMsg: checked,
//                 chatList: JSON.parse(JSON.stringify(checked == true ? _this.state.onlyHost_chatList : _this.state.origin_chatList))
//             })
//         })
//         // 监听请求更多历史消息数据
//         mzsdk.mzee.on('toRequestHistoryOldMsg', function () {
//             let { limit, isNoMore, origin_chatList } = _this.state
//             if (isNoMore == true) {//没有更多数据了，不做任何处理
//                 return;
//             }
//             var param = {
//                 offset: origin_chatList.length,
//                 limit: limit,
//             }
//             if (origin_chatList.length > 0) {
//                 param["last_id"] = origin_chatList[0].id
//             }
//             _this.getHistoryMsgList(param)
//         })
//         // 初次获取历史消息
//         if (_this.state.isHideHistoryChat == false) {
//             var param = {
//                 offset: '0',
//                 limit: _this.state.limit
//             }
//             _this.getHistoryMsgList(param)
//         }
//
//         //初始化文档
//         mzsdk.doc.init({
//             //直播时，获取文档详细信息
//             onLiveDocumentInit: (res) => {
//                 console.log('初始化直播文档信息：', res)
//                 mzsdk.mzee.emit('live-update-document-url', res.data.url)
//             },
//             //直播时，切换下一张文档
//             onChange: (res) => {
//                 console.log('切换了一张图片：', res)
//                 mzsdk.mzee.emit('live-update-document-url', res.data.url)
//             }
//         });
//         //让文档组件去请求数据
//         mzsdk.mzee.emit('doc-request-data');
//
//         //初始化商品
//         mzsdk.goodDetail.init({
//             getGoodCount: (data) => {
//                 mzsdk.mzee.emit('goodDetail-update-count', data)
//             },
//             getGoodList: (data) => {
//                 mzsdk.mzee.emit('goodDetail-update-list', data)
//             }
//         })
//
//         //初始化礼物
//         mzsdk.gift.init({
//             onReceiveGift: (data) => {
//                 console.log('收到一条礼物消息：', data)
//                 let { origin_chatList, onlyHost_chatList, isOnlyHostMsg } = _this.state;
//
//                 if (_this.isOnlyHostMsgFunc(data) == true) {
//                     onlyHost_chatList.push(data)
//                 }
//                 origin_chatList.push(data)
//
//                 _this.setState({
//                     chatList: JSON.parse(JSON.stringify(isOnlyHostMsg == true ? onlyHost_chatList : origin_chatList))
//                 }, () => {
//                     mzsdk.mzee.emit('chat_updateList')
//                 })
//             }
//         })
//
//         //初始化问答
//         mzsdk.discuss.init({
//             newReplyMsg: (count) => {
//                 console.log("问答：我的提问有一条新的回复，目前未读个数为 ", count);
//                 mzsdk.mzee.emit('updateAllReplyMsg', count)
//             },
//             newQuestion: (question) => {
//                 console.log("问答：收到一新问题, 我自己提出的问题一共有：", question);
//             },
//         });
//         //让问答组件去请求数据
//         mzsdk.mzee.emit('discuss-request-data');
//
//         //设置活动状态
//         if (res.status == 0) {
//             let preLiveSecond = parseInt(res.live_at)
//             let preLiveDate = _this.toDate(preLiveSecond)
//             this.setState({
//                 errorContent: '未开播 ' + preLiveDate,
//                 isShowErrorDisplay: true,
//             })
//         } else if (res.status == 3) {
//             this.setState({
//                 errorContent: '断流中',
//                 isShowErrorDisplay: true,
//             })
//         } else {
//             this.setState({
//                 errorContent: '',
//                 isShowErrorDisplay: false,
//             })
//         }
//
//         //初始化播放器
//         mzsdk.player.init({
//             domId: "mz-video-wrapper",
//             // 播放事件
//             onReady: function () {
//                 console.log("播放器控件准备完毕");
//                 // document.querySelector("video").pause();
//                 // document.querySelector("video").play();
//
//                 /*
//                 因为Chrome 66禁止声音自动播放，所以好多浏览器是不允许没有经过用户点击、触摸等交互之前就调用API播放的。
//                 Chrome 会报错 play() failed because the user didn't interact with the document first.
//                 其他浏览器报错各不同
//
//                 // 建议的解决方案：
//                 // 1. 默认设置静音，然后播放。然后展示出一个解除静音的按钮，让用户主动点击取消静音。
//                 // 2. 监听用户的行为，如果用户在这次访问里已经有过交互了，是可以直接播放的。否是不可以播放的。
//                       监听用户行为要从访问网址开始就做全局维护，这里时机是不对的，只是示例
//
//                     // 监听页面的点击事件，一旦点过了就能可以直接调用API播放
//                     onUserInteractiveEvent = () => {
//                         function setCanPlay() {
//                             // 设置可以调用API直接播放
//                             document.querySelector("video").play();
//                             document.removeEventListener('click', setCanPlay);
//                             document.removeEventListener('touchend', setCanPlay);
//                         }
//                         document.addEventListener('click', setCanPlay);
//                         document.addEventListener('touchend', setCanPlay);
//                     }
//                 */
//             },
//             onPlay: function (e) {
//                 console.log("开始播放", e);
//             },
//             onPause: function (e) {
//                 console.log("暂停播放", e);
//             },
//             onEnd: function (e) {
//                 console.log("结束播放", e);
//             },
//             onWaiting: function (e) {
//                 console.log("播放过程中由于网络或其他原因产生的等待，此时视频播放暂停，等网络恢复后会自动播放", e);
//             },
//             onFirstPlay: function (e) {
//                 console.log("第一次播放", e);
//                 mzsdk.mzee.emit('barrage_start')
//                 // 这个通知是用于竖屏播放下，让msgbox响应手势
//                 mzsdk.mzee.emit('vertical_chat_pointEvent_enable')
//             },
//             onDurationChange: function (e) {
//                 console.log("视频总时长发生改变", e);
//             },
//             onControlBarChange: function (e) {
//                 console.log("控制栏显示状态更改：", e)
//             },
//             onFullScreenChange: function (e) {
//                 if (e.target.player.isFullscreen_ == true) {
//                     console.log("进入全屏");
//                 } else {
//                     console.log("退出全屏，如果需要这里设置自动播放");
//                     if (document.querySelector("video").paused) {
//                         document.querySelector("video").play();
//                     }
//                 }
//             },
//             onLoadedAllData: function (e) {
//                 console.log("已加载完毕所有的媒体数据", e);
//             },
//             onLoadedData: function (e) {
//                 console.log("已加载完毕当前播放位置的媒体数据，准备播放", e);
//             },
//             onLoadStart: function (e) {
//                 console.log("开始请求数据", e);
//             },
//             onLoadedMetaData: function (e) {
//                 console.log("获取资源完成", e);
//             },
//             onCanPlayThrough: function (e) {
//                 console.log("视频源数据加载完成", e);
//             },
//             onPlaying: function (e) {
//                 console.log("视频播放中", e);
//             },
//             onError: function (e) {
//                 if (e.code == -499) {
//                     if (_this.state.ticketInfo.status == 0) {
//                         console.log("视频加载错误原因为：未开播")
//                     } else if (_this.state.ticketInfo.status == 3) {
//                         console.log("视频加载错误原因为：断流中")
//                     } else {
//                         console.log("视频加载错误原因为：空资源")
//                     }
//                 } else {
//                     console.log("视频播放失败：", e.target.player.error_.message);
//                     var error = "视频异常中断"
//                     if (_this.state.ticketInfo.status == 2) {
//                         console.log("活动已结束，回放视频生成中")
//                         error = "活动已结束，回放视频生成中"
//                     }
//                     _this.setState({
//                         errorContent: error,
//                         isShowErrorDisplay: true,
//                     })
//                 }
//             },
//             onSeeking: function (e) {
//                 console.log("视频跳转中", e);
//             },
//             onSeeked: function (e) {
//                 console.log("视频跳转结束", e);
//             },
//             onRateChange: function (e) {
//                 console.log("播放速率改变", e);
//             },
//             onTimeUpdate: function (e) {
//                 // console.log("播放时长改变", e);
//             },
//             onVolumeChange: function (e) {
//                 console.log("音量改变", e);
//             },
//             onStalled: function (e) {
//                 console.log("网速异常", e);
//             },
//             onEnterPictureInPicture: function (e) {
//                 console.log("进入画中画");
//             },
//             onLeavePictureInPicture: function (e) {
//                 console.log("离开画中画， 如果需要这里设置自动播放");
//                 if (document.querySelector("video").paused) {
//                     document.querySelector("video").play();
//                 }
//             },
//
//             // 活动事件
//             onOver: function () {
//                 console.log("主播暂时离开");
//                 _this.setState({
//                     errorContent: '断流中',
//                     isShowErrorDisplay: true,
//                 })
//             },
//             onLiveEnd: function () {
//                 console.log("结束直播");
//                 setTimeout(() => {//1秒后刷新本页面
//                     location.reload();
//                 }, 1000);
//             },
//             onOnline: function (msg) {
//                 mzsdk.mzee.emit('update-audiences-change', msg)
//             },
//             onOffline: function (msg) {
//                 mzsdk.mzee.emit('update-audiences-change', msg)
//             },
//             onCMD: function (msg) {
//                 console.log("接收到其他消息：", msg);
//                 const res = msg;
//                 switch (res.data.type) {
//                     case "*channelStart":
//                         console.log("*确认：频道有新的直播开始了,判断新开始的直播是否是本直播,可以做一些特殊处理");
//                         // if (res.data.ticket_id == ticketId) {
//
//                         // }
//                         break;
//                     case "*publishStart":
//                         console.log("*确认：开始直播");
//                         localStorage.setItem("ticketId", ticketId)
//                         location.reload();
//                         break;
//                     case "*disablechat":
//                         console.log("*确认：禁言", res.data.user_id)
//                         if (res.data.user_id == _this.state.ticketInfo.chat_uid) {
//                             Toast.info('您已被禁言', 1.5)
//                             _this.setState({
//                                 isBannedMeTalk: true
//                             })
//                         }
//                         break;
//                     case "*permitchat":
//                         console.log("*确认：解禁", res.data.user_id)
//                         if (res.data.user_id == _this.state.ticketInfo.chat_uid) {
//                             Toast.info('您已解除禁言', 1.5)
//                             _this.setState({
//                                 isBannedMeTalk: false
//                             })
//                         }
//                         break;
//                     case "*webinarViewConfigUpdate": //活动配置更改
//                         for (const aObject in res.data.webinar_content) {
//                             if (res.data.webinar_content.hasOwnProperty(aObject)) {
//                                 const element = res.data.webinar_content[aObject];
//                                 switch (element.type) {
//                                     case "hide_chat_history": //历史记录隐藏的开关
//                                         console.log("历史记录隐藏的开关:", element.is_open);
//                                         break;
//                                     case "disable_chat": //全体禁言开关
//                                         console.log("全体禁言开关:", element.is_open);
//                                         let bannedAll = false;
//                                         if (parseInt(element.is_open) == 1) {
//                                             bannedAll = true;
//                                         }
//                                         _this.state.isBannedAll = bannedAll;
//                                         break;
//                                     case "barrage": //弹幕开关
//                                         console.log("弹幕开关:", element.is_open);
//                                         mzsdk.mzee.emit('barrage_can_send', parseInt(element.is_open) == 1 ? true : false)
//                                         break;
//                                     case "record_screen": //防录屏开关
//                                         console.log("防录屏开关:", element.is_open);
//                                         let isShowRecordScreen = false;
//                                         if (parseInt(element.is_open) == 1) {
//                                             isShowRecordScreen = true;
//                                         }
//                                         _this.state.isShowDisableRecordScreen = isShowRecordScreen;
//                                         _this.fixDisableScreen();
//                                         break;
//                                     case "vote": //投票开关
//                                         console.log("投票开关:", element.is_open);
//                                         mzsdk.mzee.emit('marketing-control-config-update', { 'type': 'vote', 'value': element.is_open })
//                                         break;
//                                     case "sign": //签到开关
//                                         console.log("签到开关:", element.is_open, '签到关闭是实时的，打开只能重新进入活动');
//                                         mzsdk.mzee.emit('marketing-control-config-update', { 'type': 'sign', 'value': 0 })
//                                         break;
//                                     case "documents": //文档开关
//                                         console.log("文档开关:", element.is_open);
//                                         break;
//                                     case "prize": //抽奖开关
//                                         console.log("抽奖开关:", element.is_open);
//                                         mzsdk.mzee.emit('marketing-control-config-update', { 'type': 'prize', 'value': element.is_open })
//                                         break;
//                                     case "full_screen": //暖场图开关
//                                         console.log("暖场图开关:", element.is_open);
//                                         break;
//                                     case "open_like": //点赞视图开关
//                                         console.log("点赞视图开关:", element.is_open);
//                                         break;
//                                     case "pay_gift": //礼物视图开关
//                                         console.log("礼物视图开关:", element.is_open);
//                                         mzsdk.mzee.emit('interaction-control-config-update', { 'type': 'gift', 'value': element.is_open })
//                                         break;
//                                     case "times_speed": //倍速视图开关
//                                         console.log("倍速视图开关:", element.is_open);
//                                         break;
//                                     case "proclamations": //公告开关
//                                         let e = {
//                                             isShow: parseInt(element.is_open) == 1 ? true : false
//                                         }
//                                         mzsdk.mzee.emit('proclamations_change', e)
//                                         break;
//                                     default:
//                                         console.log("未处理的活动配置开关：", res.data.type);
//                                         break;
//                                 }
//                             }
//                         }
//                         break;
//                     case "*kickout": //收到一条踢出用户的消息
//                         console.log("用户 ", res.data.user_id, " 被踢出");
//                         if (res.data.user_id == _this.state.ticketInfo.chat_uid) {
//                             _this.setState({
//                                 isShowGetKickoutAlert: true
//                             })
//                         }
//                         break;
//                     case "*noticeUpdate": //公告内容更改
//                         let e = {
//                             content: res.data.noticeContent
//                         }
//                         mzsdk.mzee.emit('proclamations_change', e)
//                         break;
//                     case "*remove_message":
//                         _this.deleteMsg(res.data.msg_unique_id)
//                         break;
//                     default:
//                         console.log("未处理的cmd命令： ", res.data.type);
//                         break;
//                 }
//
//             },
//             // 添加低延迟（只有直播）的控制栏
//             initRTCOnlyLiveControl: function () {
//                 addRTCOnlyLiveControl()
//             },
//         });
//         mzsdk.player.setHideDefaultErrorDisplay();//隐藏默认的错误页面
//         mzsdk.player.render();
//
//         _this.getHostInfo();//获取主播信息
//         _this.getWebinarToolsList();//获取该活动的详细配置
//
//         // 添加清晰度按钮 - 如果有不同清晰度的播放源 就添加清晰度切换按钮
//         // 如果开启了低延迟播放，那么是不支持多分辨率的
//         // if (ticketInfo && ticketInfo.video.resolution && ticketInfo.video.resolution.hls && ticketInfo.video.resolution.hls.length > 0 && (!ticketInfo.video.artc || ticketInfo.video.artc.length <= 0)) {
//         //     initDefinitionManager(ticketInfo.video.resolution.hls, (ticketInfo.status == 0 || ticketInfo.status == 2) ? false : true)
//         // }
//     }
//
//     // 未开播倒计时 - 转换时间
//     toDate = (second) => {
//         if (!second) return '';
//         var date = new Date((second * 1000))
//         var year = date.getFullYear();  //取得4位数的年份
//         var month = date.getMonth() + 1;  //取得日期中的月份，其中0表示1月，11表示12月
//         month = month < 10 ? '0' + month : month
//         var day = date.getDate();      //返回日期月份中的天数（1到31）
//         day = day < 10 ? '0' + day : day
//         var hour = date.getHours();     //返回日期中的小时数（0到23）
//         hour = hour < 10 ? '0' + hour : hour
//         var minute = date.getMinutes(); //返回日期中的分钟数（0到59）
//         minute = minute < 10 ? '0' + minute : minute
//         var second = date.getSeconds(); //返回日期中的秒数（0到59）
//         second = second < 10 ? '0' + second : second
//         var res = year + "-" + month + "-" + day + " " + hour + ":" + minute;
//         return res;
//     }
//
//     // 获取历史消息
//     getHistoryMsgList = (param) => {
//         var _this = this;
//         mzsdk.chat.getHistoryPageList(param).then(data => {
//             console.log("获取历史记录：", data);
//             let { chatList, origin_chatList, onlyHost_chatList, isOnlyHostMsg, isNoMore, limit } = _this.state;
//
//             var onlyMsg = [];
//             data.forEach(element => {
//                 if (_this.isOnlyHostMsgFunc(element) == true) {
//                     onlyMsg.push(JSON.parse(JSON.stringify(element)))
//                 }
//             });
//
//             // 判断是否还有更多的数据
//             var t_isNoMore = false;
//             if (isNoMore == true) {
//                 t_isNoMore = true;
//             } else {
//                 if (!data || data.length < limit) {
//                     t_isNoMore = true
//                 }
//             }
//
//             _this.setState({
//                 onlyHost_chatList: onlyMsg.concat(onlyHost_chatList),
//                 origin_chatList: data.concat(origin_chatList),
//                 chatList: (isOnlyHostMsg == true ? onlyMsg : data).concat(chatList),
//                 isNoMore: t_isNoMore
//             }, () => {
//                 mzsdk.mzee.emit('requestHistoryFinishedToSetOffsetTop')
//             })
//         });
//     }
//
//     // 批量删除消息
//     deleteMsg = (msgIds) => {
//         console.log('删除的消息ID列表：', msgIds);
//         let { origin_chatList, onlyHost_chatList, isOnlyHostMsg } = this.state;
//
//         msgIds.forEach(element => {
//             let origin_index = origin_chatList.findIndex(t => t.unique_id === element)
//             if (origin_index > -1) {
//                 origin_chatList.splice(origin_index, 1)
//             }
//
//             let only_index = onlyHost_chatList.findIndex(t => t.unique_id === element)
//             if (only_index > -1) {
//                 onlyHost_chatList.splice(only_index, 1)
//             }
//         });
//
//         this.setState({
//             chatList: JSON.parse(JSON.stringify(isOnlyHostMsg == true ? onlyHost_chatList : origin_chatList))
//         }, () => {
//             mzsdk.mzee.emit('chat_updateList')
//         })
//     }
//
//     // 判断消息是否是 只看主播消息
//     isOnlyHostMsgFunc = (msg) => {
//         if (msg.role === 'host' || msg.uniqueID === uniqueId) {
//             return true
//         }
//         return false
//     }
//
//     // 获取二分屏播放器Ref
//     getSuperPlayerRef = (ref) => {
//         this.state.superPlayerRef = ref;
//     }
//
//     // 获取竖屏播放器Ref
//     getVerticalPlayerRef = (ref) => {
//         this.state.verticalplayerRef = ref;
//     }
//
//     // 获取在线观众列表
//     getOnlines = () => {
//         var data = {
//             ticketId: ticketId
//         }
//         mzsdk.getOnlines(data).then((res) => {
//             console.log("获取在线观众列表成功:", res);
//         }, (error) => {
//             console.log("获取在线观众列表失败:", error);
//         })
//     }
//
//     //获取活动的所有开关配置
//     getWebinarToolsList = () => {
//         var data = {
//             ticketId: ticketId
//         }
//         mzsdk.getWebinarToolsList(data).then(function (res) {
//             console.log("返回活动所有开关配置：", res);
//             if (res.tools && res.tools.length > 0) {
//                 var filterData = res.tools.filter(item => item.tools == 'pay_gift' || item.tools == 'bonus' || item.tools == 'open_like');
//                 console.log('filterData:', filterData)
//                 for (var i = 0; i < filterData.length; i++) {
//                     const item = filterData[i];
//                     if (item.tools == 'pay_gift') {
//                         mzsdk.mzee.emit('interaction-control-config-update', { 'type': 'gift', 'value': item.is_open })
//                         continue;
//                     }
//                     if (item.tools == 'bonus') {
//
//                         continue;
//                     }
//                     if (item.tools == 'open_like') {
//
//                         continue;
//                     }
//                 }
//             }
//         }, function (err) {
//             console.log("获取活动所有配置接口请求错误: ", err);
//         })
//     }
//
//     // 处理防录屏
//     fixDisableScreen = () => {
//         if (this.state.superPlayerRef) {
//             if (this.state.isShowDisableRecordScreen) {
//                 this.state.superPlayerRef.startDisableRecordScreenDiv(this.state.hostInfo ? this.state.hostInfo.nickname : '');
//             } else {
//                 this.state.superPlayerRef.endDisableRecordScreenDiv();
//             }
//         } else if (this.state.verticalplayerRef) {
//             if (this.state.isShowDisableRecordScreen) {
//                 this.state.verticalplayerRef.startDisableRecordScreenDiv(this.state.hostInfo ? this.state.hostInfo.nickname : '');
//             } else {
//                 this.state.verticalplayerRef.endDisableRecordScreenDiv();
//             }
//         }
//     }
//
//     // 获取主播信息
//     getHostInfo = () => {
//         var _this = this;
//         var data = {
//             ticketId: ticketId
//         }
//
//         mzsdk.getHostInfo(data).then(function (res) {
//             console.log("获取主播信息接口返回成功：", res);
//             _this.setState({
//                 hostInfo: res
//             }, () => {
//                 _this.fixDisableScreen();
//             })
//         }, function (error) {
//             console.log("获取主播信息接口失败：", error);
//         })
//     }
//
//     // 无白名单观看权限、无F码观看权限、被踢出的回调函数
//     dialogHandle = (name) => {
//         this.setState({
//             [name]: !this.state[name]
//         })
//         this.props.history.push('/home');
//     }
//
//     // F码输入成功，实例化SDK
//     addCallBack = () => {
//         this.setState({
//             isShowFCodeAlert: false
//         })
//         this.initMzSDK();
//     }
//
//     // 片头广告事件回调
//     videoBeforeAdEvent = (event, link) => {
//         if (event == 'click' && link.length > 0) {
//             window.open(link);
//         }
//         this.setState({
//             isShowFullScreenAd: false
//         })
//     }
//
//     // 界面渲染
//     render() {
//         let { chatList, ticketInfo, isShowFCodeAlert, isShowWhiteAlert, isShowGetKickoutAlert, isShowErrorDisplay, errorContent, live_style, isShowFullScreenAd, } = this.state;
//         return (
//             <div className={ticketInfo && (ticketInfo.status == 1 || ticketInfo.status == 3) ? "main-wrapper live" : "main-wrapper"} style={{ minWidth: '0rem' }}>
//                 {
//                     live_style == 1 ?//竖屏播放器
//                         <VerticalPlayer
//                             isShowErrorDisplay={isShowErrorDisplay}
//                             errorContent={errorContent}
//                             ticketInfo={ticketInfo}
//                             ticketId={ticketId}
//                             isShowFullScreenAd={isShowFullScreenAd}
//                             getRef={this.getVerticalPlayerRef}
//
//                             chatList={chatList}
//
//                         >
//                         </VerticalPlayer> : (
//                             live_style == 0 ?//横屏播放器
//                                 <SuperPlayer
//                                     isShowErrorDisplay={isShowErrorDisplay}
//                                     errorContent={errorContent}
//                                     ticketInfo={ticketInfo}
//                                     ticketId={ticketId}
//                                     isShowFullScreenAd={isShowFullScreenAd}
//                                     getRef={this.getSuperPlayerRef}
//
//                                     chatList={chatList}
//                                 >
//                                 </SuperPlayer> : (
//                                     isShowFullScreenAd == false &&
//                                         // <div>123</div>
//                                     <div style={{ background: 'white', display: 'flex', justifyContent: 'center', alignContent: 'center', width: '100vw', height: '100vh' }}><ActivityIndicator true size="large"></ActivityIndicator></div>
//                                 )
//                         )
//                 }
//                 {
//                     isShowFullScreenAd && <FullScreenAd
//                         ticketId={ticketId}
//                         event={this.videoBeforeAdEvent}
//                     />
//                 }
//                 {
//                     isShowFCodeAlert &&
//                     <FCodeAlert
//                         ticketId={ticketId}
//                         dialogHandle={() => this.dialogHandle("isShowFCodeAlert")}
//                         addCallBack={() => this.addCallBack()}
//                     >
//                     </FCodeAlert>
//                 }
//                 {
//                     isShowWhiteAlert &&
//                     <WhiteAlert
//                         dialogHandle={() => this.dialogHandle("isShowWhiteAlert")}
//                     >
//                     </WhiteAlert>
//                 }
//                 {
//                     isShowGetKickoutAlert &&
//                     <GetKickoutAlert
//                         dialogHandle={() => this.dialogHandle("isShowGetKickoutAlert")}
//                     >
//                     </GetKickoutAlert>
//                 }
//                 {
//                     <Barrage height={live_style == 0 ? '2.4rem' : '4.2rem'} />
//                 }
//             </div>
//         );
//     }
// }
